package com.szh.cloud.login.service;

import com.szh.cloud.login.entity.MenuLevelEntity;
import com.szh.cloud.mybatis.entity.PtUserEntity;
import com.szh.cloud.user.entity.UserEntity;
import com.szh.cloud.user.execption.RepeatEmailException;
import com.szh.cloud.user.execption.RepeatMobileException;
import com.szh.cloud.user.execption.RepeatUserNameException;

import java.util.List;

public interface LoginService  {
    PtUserEntity queryUserInfoByName(String username);

    List<MenuLevelEntity> queryMenuList();

    /**
     * 查询权限列表
     * @param userUuid
     * @return
     */
    List<String> queryAuthList(String userUuid);

    /**
     * 根据用户Id查询用户信息
     * @param userUuid
     * @return
     */
    PtUserEntity queryUserListById(String userUuid);

    /**
     * 修改用户信息
     * @param userEntity
     */
    void modifyUserInfo(UserEntity userEntity) throws RepeatEmailException, RepeatUserNameException, RepeatMobileException;
}

